define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {

    var Controller = {
        index: function () {
            // 加载员工列表
            loadUserList();

            // 导出明细按钮事件
            $('#export-detail-btn').click(function(e) {
                e.preventDefault();
                exportDetail();
            });

            // 导出汇总按钮事件
            $('#export-summary-btn').click(function(e) {
                e.preventDefault();
                exportSummary();
            });

            // 重置按钮事件
            $('#reset-btn').click(function() {
                resetForm();
            });

            // 日期变化时自动预览数据
            $('#start_date, #end_date, #user_id, #status').change(function() {
                previewData();
            });

            // 页面加载完成后自动预览数据
            previewData();

            // 加载员工列表
            function loadUserList() {
                $.get('user/user/index', function(data) {
                    if (data.rows) {
                        var html = '<option value="">全部员工</option>';
                        data.rows.forEach(function(user) {
                            html += '<option value="' + user.id + '">' + user.nickname + '</option>';
                        });
                        $('#user_id').html(html);
                    }
                });
            }

            // 预览数据
            function previewData() {
                var params = $('#export-form').serialize();
                $.get('scanwork/wage_export/preview?' + params, function(data) {
                    if (data.code === 1) {
                        updatePreviewStats(data.data);
                    }
                });
            }

            // 更新预览统计
            function updatePreviewStats(stats) {
                $('#total-count').text(stats.total_count || 0);
                $('#total-quantity').text(stats.total_quantity || 0);
                $('#total-wage').text('¥' + parseFloat(stats.total_wage || 0).toFixed(2));
                $('#confirmed-count').text(stats.confirmed_count || 0);
            }

            // 重置表单
            function resetForm() {
                $('#export-form')[0].reset();
                $('#start_date').val('{:date("Y-m-01")}');
                $('#end_date').val('{:date("Y-m-d")}');
                previewData();
            }

            // 导出明细
            function exportDetail() {
                var params = $('#export-form').serialize();
                var url = 'export' + (params ? '?' + params : '');
                window.open(url, '_blank');
            }

            // 导出汇总
            function exportSummary() {
                var params = $('#export-form').serialize();
                var url = 'exportSummary' + (params ? '?' + params : '');
                window.open(url, '_blank');
            }
        }
    };
    return Controller;
});
